package entity;

/**
 * @author JDL
 */
import java.io.Serializable;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Embeddable;
import javax.persistence.Embedded;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

@Entity
@Embeddable
@Table(name = "Depositos")
public class DepositoBD implements Serializable {

	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	private Integer idDeposito;
	
	private String nombre;

	@Embedded
	@OneToMany(cascade = CascadeType.ALL)
	private List<PuntoReposicionBD> stock;

	@OneToMany(cascade = CascadeType.ALL)
	private List<PedidoBD> pedidosReposicion;

	@OneToMany(cascade = CascadeType.ALL)
	private List<RemitoEntreDepositosBD> remitosEntreDepositos;

	public DepositoBD() {

	}

	public Integer getIdDeposito() {
		return idDeposito;
	}

	public void setIdDeposito(Integer idDeposito) {
		this.idDeposito = idDeposito;
	}
	
	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public void setStock(List<PuntoReposicionBD> stock) {
		this.stock = stock;
	}

	public List<PuntoReposicionBD> getStock() {
		return stock;
	}

	public static long getSerialVersionUID() {
		return serialVersionUID;
	}

	public void setPedidosReposicion(List<PedidoBD> pedidosReposicion) {
		this.pedidosReposicion = pedidosReposicion;
	}

	public List<PedidoBD> getPedidosReposicion() {
		return pedidosReposicion;
	}

	/**
	 * @param remitosEntreDepositos
	 *            the remitosEntreDepositos to set
	 */
	public void setRemitosEntreDepositos(
			List<RemitoEntreDepositosBD> remitosEntreDepositos) {
		this.remitosEntreDepositos = remitosEntreDepositos;
	}

	/**
	 * @return the remitosEntreDepositos
	 */
	public List<RemitoEntreDepositosBD> getRemitosEntreDepositos() {
		return remitosEntreDepositos;
	}

}
